package com.inkFlow.crawl.domain.vo;

import com.inkFlow.common.excel.annotation.ExcelDictFormat;
import com.inkFlow.common.excel.convert.ExcelDictConvert;
import com.inkFlow.crawl.domain.CrawlSourceConfig;
import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
import cn.idev.excel.annotation.ExcelProperty;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;

import java.io.Serial;
import java.io.Serializable;
import java.util.Date;



/**
 * 爬虫管理视图对象 crawl_source_config
 *
 * @author inkFlow
 * @date 2025-08-21
 */
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = CrawlSourceConfig.class)
public class CrawlSourceConfigVo implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 爬虫id
     */
    @ExcelProperty(value = "爬虫id")
    private Integer crawlId;

    /**
     * 爬虫名称
     */
    @ExcelProperty(value = "爬虫名称")
    private String crawlName;

    /**
     * 爬虫地址
     */
    @ExcelProperty(value = "爬虫地址")
    private String crawlUrl;

    /**
     * 爬虫类型，1：文本；2：音频,；3：图片
     */
    @ExcelProperty(value = "爬虫类型，1：文本；2：音频,；3：图片", converter = ExcelDictConvert.class)
    @ExcelDictFormat(dictType = "crawl_source_config_crawl_type")
    private Integer crawlType;

    /**
     * 编码，默认utf-8
     */
    @ExcelProperty(value = "编码，默认utf-8")
    private String charset;

    /**
     * 是否启用，1：启用；2：禁用
     */
    @ExcelProperty(value = "是否启用，1：启用；2：禁用", converter = ExcelDictConvert.class)
    @ExcelDictFormat(dictType = "crawl_source_config_crawl_enabled")
    private Integer crawlEnabled;

    /**
     * 备注
     */
    @ExcelProperty(value = "备注")
    private String crawlRemark;


}
